Generating reports is one of the tasks performed most frequently by users of spreadsheet application programs. In order to author a report, access to a data source located on an external computer system is often needed. For instance, in order to obtain the data necessary for a particular report, it may be necessary to access data contained in a remote database or an on-line analytical processing (“OLAP”) cube.
In order to access such a data source, a network connection must be created to the source of the data. To create such a connection, it is necessary to know the identity of the server computer the data is contained on, the identity of the database within the server computer, and often other knowledge specific to databases or data technologies. In many cases, however, the report author does not have quick access to this information. Therefore, it may be very difficult for a user to locate and connect to a data source.
Once a user is finally able to connect to a data source, the information needed to connect to the data source may be captured and saved in a data connection file for future use. However, there is no easy way for one computer user to share a data connection file with a multitude of other users. Therefore, in many cases, each user needing access to the same data source must independently locate or create the information necessary to connect to the data source on their own. This can be frustrating and time consuming for each user. When an organization has a large number of analysts needing to connect to the same data source, this can cause a great deal of inefficiency.
When reports are authored with connections to external data sources, information is typically stored within the report that describes the connection to the data source. In this manner, the connection to the data source can be reestablished when the report is subsequently opened. However, if the location of the data source changes or the data source is disabled, the report will identify an incorrect location or other parameters (such as a names, table names, catalog names, etc.) for the data source. When the report is opened, a user may be confused as to why the data source is unavailable. Moreover, if an organization utilizes a large number of reports that reference a modified data source, it may be difficult to track down each of the reports and modify the reports to reference the new location of the data source. Reports connecting to the data source are useless until someone locates the reports and manually updates the references to the data source.
The use of external data sources can also be difficult for system administrators. In particular, system administrators currently do not have a way to centrally define connections to trusted data sources and to make the connections available to end users. Moreover, there is no easy way for a system administrator to make certain data sources accessible to one group of users and not accessible to another group of users.
It is with respect to these considerations and others that the various embodiments of the present invention have been made.